English

谈“千年虫”要讲科学

1999-10-27 来源:光明日报 尹宝林 我有话说

随着2000年的临近,“千年虫”的问题越来越引起人们的重视,各种新闻媒介也对此进行了广泛的宣传。但是,“千年虫”究竟会对人们的日常生活和工作产生什么影响?真的像某些媒体宣传的那么可怕吗?对“千年虫”问题的夸大宣传已经引起关注……

今年9月9日某电视台的新闻节目中多次提到,当天是“千年虫”问题的高危日,并在当晚的新闻报道中庆幸未发现有“千年虫”的发作。其实,对计算机知识有所了解的人都会知道,这是一个根本不存在的问题。说这一天会出现“千年虫”,是说有些计算机应用系统采用9999代表日期的结束,而1999年9月9日有四个9999,因此会表示为9999,并由此产生问题。姑且不说是否有哪种应用系统采用十进制的9999来表示日期的结束,单就日期而言,1999年的9月9日就绝不可能表示为9999。一年有12个月,每个月有28-31天,因此,月份和日期必须分别用两位十进制数来表示。而当月和日采用两位数字表示时,1999年9月9日将表示成990909,决不会出现9999的情况。

“千年虫”的问题是由于一些早期的计算机应用系统采用两位数字代表年份,无法区分百年的差别,因此在计算2000年前后的两个日期之间的时间间隔时,会产生100年的误差,例如有可能把2000年当成1900年。所以产生“千年虫”问题的必要条件是:一、应用系统时间的表示采用年、月、日的形式。二、应用系统中的年份用两位数字来表示。三、应用系统需要计算跨年份的两个日期之间的时间间隔,系统的功能和行为的正确性依赖于年份和日期的正确性。可以看出,符合上述各种条件的计算机应用系统主要集中在金融、商业、保险、交通等领域。这些领域中的应用需要和人打交道,因此对时间的记录采用年、月、日的方式,并且其计算结果是与日历日期密切相关的。而在其他领域,通常采用对计算机来说更方便和更有效的时间表示方式,计算结果通常也不依赖于日历日期而是依赖于相对时段的长度。这些系统的计时周期与2000年无关,没有一般意义上的“千年虫”问题。至于各种与日期毫无关系的其他控制系统和嵌入式应用系统则更与“千年虫”问题毫无关系。

“千年虫”在宣传中产生被夸大的倾向,其原因是多方面的。随着2000年的临近,这一问题日益成为人们关注的热点之一。在这种情况下,一些缺乏认真研究和真知灼见的猜测和想象容易被人们所接受。新闻媒介由于不了解深入的技术问题,也难以做出准确的判断。同时,由于这一问题的解决提供了巨大的市场和可观的经济效益,商界也乐于推波助澜。

现在,党和国家正在大力提倡科教兴国,推广科普宣传。新闻媒介宣传计算机“千年虫”的问题,是为普及科学技术知识做了一件好事。需要注意的是,在进行科普宣传时,要注意宣传的科学性,防止不科学的东西混进来。

手机光明网

光明网版权所有

光明日报社概况 | 关于光明网 | 报网动态 | 联系我们 | 法律声明 | 光明网邮箱 | 网站地图

光明网版权所有